<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
  <title>Description of v_cent2frq</title>
  <meta name="keywords" content="v_cent2frq">
  <meta name="description" content="V_FRQ2ERB  Convert Hertz to Cents frequency scale [C,CR]=(FRQ)">
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
  <meta name="robots" content="index, follow">
  <link type="text/css" rel="stylesheet" href="../m2html.css">
</head>
<body>
<a name="_top"></a>
<div><a href="../index.html">Home</a> &gt;  <a href="index.html">v_mfiles</a> &gt; v_cent2frq.m</div>

<!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td>
<td align="right"><a href="index.html">Index for v_mfiles&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>-->

<h1>v_cent2frq
</h1>

<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
<div class="box"><strong>V_FRQ2ERB  Convert Hertz to Cents frequency scale [C,CR]=(FRQ)</strong></div>

<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
<div class="box"><strong>function [frq,cr] = v_cent2frq(c) </strong></div>

<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
<div class="fragment"><pre class="comment">V_FRQ2ERB  Convert Hertz to Cents frequency scale [C,CR]=(FRQ)
    frq = v_frq2mel(c) converts a vector of frequencies in cents
    to the corresponding values in Hertz.
   100 cents corresponds to one semitone and 440Hz corresponds to 5700
   cents.
   The optional cr output gives the gradient in Hz/cent.

    The relationship between cents and frq is given by:

    c = 1200 * log2(f/(440*(2^((3/12)-5)))

    Reference:

     [1] Ellis, A.
         On the Musical Scales of Various Nations
         Journal of the Society of Arts, 1885, 485-527</pre></div>

<!-- crossreference -->
<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
This function calls:
<ul style="list-style-image:url(../matlabicon.gif)">
<li><a href="v_xticksi.html" class="code" title="function s=v_xticksi(ah)">v_xticksi</a>	V_XTIXKSI labels the x-axis of a plot using SI multipliers S=(AH)</li><li><a href="v_yticksi.html" class="code" title="function s=v_yticksi(ah)">v_yticksi</a>	V_YTIXKSI labels the y-axis of a plot using SI multipliers S=(AH)</li></ul>
This function is called by:
<ul style="list-style-image:url(../matlabicon.gif)">
</ul>
<!-- crossreference -->


<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function [frq,cr] = v_cent2frq(c)</a>
0002 <span class="comment">%V_FRQ2ERB  Convert Hertz to Cents frequency scale [C,CR]=(FRQ)</span>
0003 <span class="comment">%    frq = v_frq2mel(c) converts a vector of frequencies in cents</span>
0004 <span class="comment">%    to the corresponding values in Hertz.</span>
0005 <span class="comment">%   100 cents corresponds to one semitone and 440Hz corresponds to 5700</span>
0006 <span class="comment">%   cents.</span>
0007 <span class="comment">%   The optional cr output gives the gradient in Hz/cent.</span>
0008 <span class="comment">%</span>
0009 <span class="comment">%    The relationship between cents and frq is given by:</span>
0010 <span class="comment">%</span>
0011 <span class="comment">%    c = 1200 * log2(f/(440*(2^((3/12)-5)))</span>
0012 <span class="comment">%</span>
0013 <span class="comment">%    Reference:</span>
0014 <span class="comment">%</span>
0015 <span class="comment">%     [1] Ellis, A.</span>
0016 <span class="comment">%         On the Musical Scales of Various Nations</span>
0017 <span class="comment">%         Journal of the Society of Arts, 1885, 485-527</span>
0018 
0019 <span class="comment">%      Copyright (C) Mike Brookes 1998</span>
0020 <span class="comment">%      Version: $Id: v_cent2frq.m 10865 2018-09-21 17:22:45Z dmb $</span>
0021 <span class="comment">%</span>
0022 <span class="comment">%   VOICEBOX is a MATLAB toolbox for speech processing.</span>
0023 <span class="comment">%   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html</span>
0024 <span class="comment">%</span>
0025 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>
0026 <span class="comment">%   This program is free software; you can redistribute it and/or modify</span>
0027 <span class="comment">%   it under the terms of the GNU General Public License as published by</span>
0028 <span class="comment">%   the Free Software Foundation; either version 2 of the License, or</span>
0029 <span class="comment">%   (at your option) any later version.</span>
0030 <span class="comment">%</span>
0031 <span class="comment">%   This program is distributed in the hope that it will be useful,</span>
0032 <span class="comment">%   but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
0033 <span class="comment">%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span>
0034 <span class="comment">%   GNU General Public License for more details.</span>
0035 <span class="comment">%</span>
0036 <span class="comment">%   You can obtain a copy of the GNU General Public License from</span>
0037 <span class="comment">%   http://www.gnu.org/copyleft/gpl.html or by writing to</span>
0038 <span class="comment">%   Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.</span>
0039 <span class="comment">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span>
0040 <span class="keyword">persistent</span> p q
0041 <span class="keyword">if</span> isempty(p)
0042     p=1200/log(2);
0043     q=5700-p*log(440);
0044 <span class="keyword">end</span>
0045 <span class="comment">% c = 1200*sign(frq).*log2(frq/(440*2^((3/12)-5)));</span>
0046 af=(exp((abs(c)-q)/p));
0047 frq=sign(c).*af;
0048 cr=af/p;
0049 <span class="keyword">if</span> ~nargout
0050     plot(c,frq,<span class="string">'-x'</span>);
0051     ylabel([<span class="string">'Frequency ('</span> <a href="v_yticksi.html" class="code" title="function s=v_yticksi(ah)">v_yticksi</a> <span class="string">'Hz)'</span>]);
0052     xlabel([<span class="string">'Frequency ('</span> <a href="v_xticksi.html" class="code" title="function s=v_xticksi(ah)">v_xticksi</a> <span class="string">'Cents)'</span>]);
0053 <span class="keyword">end</span></pre></div>
<hr><address>Generated by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
</body>
</html>